# 使用官方 Python 3.10 镜像作为基础镜像
FROM python:3.10-slim

# 设置工作目录
WORKDIR /app

# 设置环境变量
ENV PYTHONUNBUFFERED=1 \
    PYTHONDONTWRITEBYTECODE=1 \
    TZ=Asia/Shanghai

# 安装系统依赖
RUN apt-get update && apt-get install -y \
    gcc \
    g++ \
    curl \
    tzdata \
    && rm -rf /var/lib/apt/lists/*

# 复制依赖文件
COPY requirements.txt .

# 安装 Python 依赖
RUN pip install --no-cache-dir -r requirements.txt

# 复制项目文件
COPY . .

# 创建必要的目录
RUN mkdir -p logs

# 创建非root用户
RUN useradd -m -u 1000 trader && \
    chown -R trader:trader /app

# 设置目录权限
RUN chmod -R 755 /app && \
    chmod -R 777 /app/logs

# 切换到非root用户
USER trader

# 健康检查 - 检查Flight策略相关日志
HEALTHCHECK --interval=5m --timeout=10s --start-period=30s --retries=3 \
    CMD python -c "import os; exit(0 if os.path.exists('logs/account_manager.log') or os.path.exists('logs/demo_flight_trading.log') else 1)"

# 默认运行Flight策略多账号管理器
CMD ["python", "-u", "multi_account_manager.py"]
